1119E - Pavel and Triangles - CodeForces Solution


brute force dp fft greedy ternary search *1900

Please click on ads to support us..

C++ Code:

/*
Problem: 1119E
Date: 19-01-2024 12:08 PM
*/


#include <iostream>

using namespace std;

int n;
long long a[300000];

int main() {
	cin >> n;
	for(int i = 0; i < n; i++) {
		cin >> a[i];
	}
	int i = 0; // index of small side
	int j = 0; // index of 2 larger sides
	long long count = 0;
	while(i < n && j < n) {
		if(a[i] == 0) {
			i++;
		}else if(i == j) {
			count += a[i] / 3;
			a[i] %= 3;
			j++;
		}else if(a[j] >= 2) {
			long long tris = min(a[i], a[j] / 2);
			count += tris;
			a[i] -= tris;
			a[j] -= 2 * tris;
		}else {
			j++;
		}
	}
	cout << count << endl;
}


Comments

Submit
0 Comments
More Questions

1538B - Friends and Candies
580A - Kefa and First Steps
1038B - Non-Coprime Partition
43A - Football
50A - Domino piling
479A - Expression
1480A - Yet Another String Game
1216C - White Sheet
1648A - Weird Sum
427A - Police Recruits
535A - Tavas and Nafas
581A - Vasya the Hipster
1537B - Bad Boy
1406B - Maximum Product
507B - Amr and Pins
379A - New Year Candles
1154A - Restoring Three Numbers
750A - New Year and Hurry
705A - Hulk
492B - Vanya and Lanterns
1374C - Move Brackets
1476A - K-divisible Sum
1333A - Little Artem
432D - Prefixes and Suffixes
486A - Calculating Function
1373B - 01 Game
1187A - Stickers and Toys
313B - Ilya and Queries
579A - Raising Bacteria
723A - The New Year Meeting Friends